0){ if ( $row['password'] == MD5($password) ){ $_ADMIN['uid'] = $row['uid']; $_ADMIN['login'] = $row['login']; $_ADMIN['u_name'] = $row['u_name']; $_ADMIN['u_sname'] = $row['u_sname']; //$_ADMIN['groupid'] = $row['groupid']; $access = array(); $sql = "select distinct ga.plugins_name from groups_access ga,users_groups ug where ug.uid='".$row['uid']."' and ug.group_id =ga.gid"; $rs_a = db_query($sql); while($row_a = db_fetch($rs_a)){ $access[$row_a['plugins_name']] = 1; } $_ADMIN['access'] = $access; $_SESSION['_ADMIN'] = $_ADMIN; //logUser($_ADMIN['uid']); } else { $_ADMIN['mess'] = "Неверный пароль"; } } else { global $admin_user, $admin_pass; if ($login == $admin_user){ $sql = "select value_field from table_info where name_field='pass'"; $row = db_fetch(db_query($sql)); if ($row['value_field'] <> ""){ $admin_pass = $row['value_field']; } if (md5($password) == $admin_pass) { $_ADMIN['uid'] = 1; $_ADMIN['login'] = $admin_user; $_ADMIN['u_name'] = $admin_user; $_ADMIN['u_sname'] = $admin_user; $_ADMIN['groupid'] = 2; global $plugins; $access = array(); foreach ($plugins as $key => $val){ foreach ($val as $key2 => $val2){ $access[$key2] = 1; } } $_ADMIN['access'] = $access; $_SESSION['_ADMIN'] = $_ADMIN; } else { $_ADMIN['mess'] = "Неверный пароль"; } } else { $_ADMIN['mess'] = "Данного пользователя нет в системе"; } } return $_ADMIN; } function getPath($parent_id,$path = ""){ global $lang; if ($parent_id > 0){ $sql = "select c.alias,c.cid,c.parent_id,c.type,c.razdel_name from content c where c.cid = '".$parent_id."'"; $row = db_fetch(db_query($sql)); if ($row['alias'] <> ""){ $link = $row['alias']; } else { $link = $row['cid']; } switch($row['razdel_name']){ case 'catalog': if($row['type'] =='t_real'){ $link = "real/".$link; } else { $link = "catalog/?type=".$link; }; break; case 'text': $link = "text/".$link; break; case 'news': $link = "news/".$link; break; default: $link = $row['razdel_name']."/".$link; } $sql = "select name from ".$row['type']." where id = '".$row['cid']."' and lang_id='".$lang."'"; $row_n = db_fetch(db_query($sql)); $out = " > ".$row_n['name']."".$path; if ( $row['parent_id'] > 0){ $out = getPath($row['parent_id'],$out); } else { $sql = "select rl.name from razdels r,razdels_lang rl where r.razdel_name ='".$row['razdel_name']."' and r.rid=rl.rid and rl.lang ='".$lang."'"; $row_l = db_fetch(db_query($sql)); switch($row['razdel_name']){ case 'tyres': $link = "catalog"; break; case 'disk_catalog': $link = "catalog_disk"; break; case 'text': $link = "text"; break; case 'news': $link = "news"; break; default: $link = $row['razdel_name']; } $out = "".$_SERVER['HTTP_HOST']." > ".$row_l['name']." ".$out; } return $out; } else { return "".$_SERVER['HTTP_HOST'].""; } } function getPathShop($parent_id,$path = ""){ global $lang; if ($parent_id > 0){ $sql = "select c.alias,c.cid,c.parent_id,c.type,c.razdel_id,s.parent_id as struc_parent from shop_content c, shop_struct s where c.cid = '".$parent_id."' and s.razdel_id = c.razdel_id"; $row = db_fetch(db_query($sql)); if ($row['alias'] <> ""){ $link = $row['alias']; } else { $link = $row['cid']; } switch($row['struc_parent']){ case 'tree': $link = "razdel/".$link; break; default: $link = "items/".$link; } $sql = "select name from ".$row['type']." where id = '".$row['cid']."' and lang_id='".$lang."'"; $row_n = db_fetch(db_query($sql)); $out = " > ".$row_n['name']."".$path; if ( $row['parent_id'] > 0){ $out = getPathShop($row['parent_id'],$out); } else { $out = "".$_SERVER['HTTP_HOST']." ".$out; } return $out; } else { return "".$_SERVER['HTTP_HOST'].""; } } function getLevel($parent_id,$razdel_name,$level = 1){ if ($parent_id > 0){ $level = $level+1; $sql = "select c.cid, c.parent_id from content c where c.cid = '".$parent_id."' and c.razdel_name='".$razdel_name."'"; $row = db_fetch(db_query($sql)); if ( $row['parent_id'] > 0){ $level = getLevel($row['parent_id'],$razdel_name,$level); } return $level; } return $level; } function logUser(){ return ''; global $_USER,$log_message; require_once 'user_info.php'; $uinfo = new user_info(); $referer = @$_SERVER["HTTP_REFERER"]; $useragent = $uinfo->user_agent(); $ip = $uinfo->IP(); $path = $uinfo->url(); $os = $uinfo->os('name'); $os_version = $uinfo->os('version'); $browser = $uinfo->browser('name'); $crawler = (int)$uinfo->is_crawler(); $login_uid = (int)@$_USER['uid']; $sessid = session_id(); $mess = $log_message; $browser_version = $uinfo->browser('version'); $dateLog = date("Y-m-d 00:00:00",strtotime("-2 day")); $sql = "select uid from logs where datePost >='".$dateLog."' and sessid='".$sessid."' limit 1 "; $row = db_fetch(db_query($sql)); if ($row['uid'] > 0){ $uid = $row['uid']; $first = 0; } else { $first = 1; $sql = "select max(uid) as muid from logs "; $row = db_fetch(db_query($sql)); $uid = $row['muid']+1; } $sql = "insert into logs( `uid`,`sessid`, `ip` , `path` , `referer` , `useragent` , `os` , `os_version` , `browser` , `browser_version` , `crawler`,first,login_uid,mess) values ('".$uid."','".$sessid."','".$ip."','".$path."','".$referer."','".$useragent."','".$os."','".$os_version."','".$browser."','".$browser_version."','".$crawler."','".$first."','".$login_uid."','".$mess."')"; db_query($sql); } function siteMap_($parent_id = 0){ global $lang; $sql = "select * from content c,content_body cb where c.parent_id='".$parent_id."' and type='articles' and disable=0 and c.cid=cb.cid and cb.lang='".$lang."'"; $rs = db_query($sql); $map = ""; while($row = db_fetch($rs)){ if ($row['alias'] <> ""){ $link = $row['alias']; } else { $link = $row['cid']; } $map .= "
  • ".$row['name']."
  • "; $map .= siteMap($row['cid']); } if ($map <> ""){ $map = "";}; return $map; } function siteMapShop($parent_id=0,$level=0){ global $lang; $level++; $map =""; $sql = "select * from shop_struct ss, shop_struct_names ssn where ss.razdel_id=ssn.razdel_id and ss.disable=0 and ssn.lang_id = '".$lang."' and ss.parent_id='".$parent_id."' order by pos "; $rs = db_query($sql); while($row = db_fetch($rs)){ if ($level==1){ $map .= "
  • ".$row['name']."
  • "; } elseif($level==2){ $map .= "
  • ".$row['name']."
  • "; }else { $map .= "
  • ".$row['name']."
  • "; } if($row['block'] <> 'shop_struct_names'){ $sql = "select * from ".$row['block']." ssn where ssn.razdel_id='".$row['razdel_id']."' and ssn.lang_id = '".$lang."' and disable=0 order by pos"; $rs2 = db_query($sql); $smap = ""; while($row2 = db_fetch($rs2)){ $smap .= "
  • ".$row2['name']."
  • "; } if ($smap <> ""){ $map .= ""; }; } $map .= siteMapShop($row['razdel_id'],$level); } if ($map <> ""){ $map = ""; }; if($level==1){ $map = "
  • ".text("catalog")."
  • " ; } return $map; } function siteMap(){ global $lang; $map =""; $sql = "select name,razdel_name from razdels_lang rl, razdels r where r.rid=rl.rid and rl.lang='".$lang."' and razdel_name <> 'podbor_avto' order by name"; $rs = db_query($sql); while($row_razdel = db_fetch($rs)){ switch($row_razdel['razdel_name']){ case 'shop': $link = "razdel"; break; case 'disk_catalog': $link = "catalog_disk"; break; default: $link = $row_razdel['razdel_name']; } $map .= "
  • ".$row_razdel['name']."
  • "; } return $map; } function siteMap_in($razdel_name, $parent_id = 0,$level=1){ global $lang; if($level >=4 and (($razdel_name == 'tyres') or ($razdel_name == 'disk_catalog'))){ return ""; } $sql = "select * from content c where c.parent_id='".$parent_id."' and c.razdel_name='".$razdel_name."' and disable=0 order by pos desc, alias"; $rs = db_query($sql); $map = ""; while($row = db_fetch($rs)){ if($row['type'] <> 't_size' and $row['type'] <> 't_size_disk' ){ $sql2 = "select * from ".$row['type']." where id='".$row['cid']."' and lang_id='".$lang."'"; $row2 = db_fetch(db_query($sql2)); if ($row['alias'] <> ""){ $link = $row['alias']; } else { $link = $row['cid']; } switch($row['razdel_name']){ case 'shop': if($row['type'] =='t_cat'){ $link = "razdel/".$link; } else { $link = "catalog/?type=".$link; }; break; case 'text': $link = "text/".$link; break; case 'news': $link = "news/".$link; break; default: $link = $row['razdel_name']."/".$link; } if($row2['name'] <> ""){ if($row['type'] =='t_tovar'){ $map .= "
  • ".$row2['name']."
  • "; }else { $map .= "
  • ".$row2['name']."
  • "; $map .= siteMap_in($razdel_name, $row['cid'],$level+1); } } } } if ($map <> ""){ $map = ""; }; return $map; } function is_admin($uid){ $sql = "select * from users_groups where uid='".$uid."' and group_id=2"; $row = db_fetch(db_query($sql)); if ($row['uid'] > 0 ){ return true; } else { return false; } } function add_comment($id,$type){ global $in,$_USER; $rating = (int)@$in['rating']; $comment = wordwrap(substr(@$in['comment'],0,1000), 30, " ",1); //$code = @$in['code']; if( $comment == ""){ return ""; } elseif($rating < 1 or $rating > 5) { return text('enter_rating'); } else { $sql = "insert into comments (id,type,u_name,u_comment,disable,rating) values('".$id."','".$type."','".$_USER['u_sname']." ".$_USER['u_name']."','".$comment."',1,'".$rating."')"; $res = db_query($sql); return text('comment_added');; } } function add_comment_shop($id){ global $in; $name = @$in['name']; $rating = (int)@$in['rating']; $comment = wordwrap(substr(@$in['comment'],0,1000), 30, " ",1); $code = @$in['code']; if($name == "" or $comment == ""){ return text('enter_fiels'); } elseif($rating < 1 or $rating > 5) { return text('enter_rating'); }elseif(strtoupper($code) <> $_SESSION['_REG']['code']){ return text('enter_code_er'); } else { $sql = "insert into comments_shop (id,type,u_name,u_comment,disable,rating) values('".$id."','".$type."','".$name."','".$comment."',0,'".$rating."')"; $res = db_query($sql); return "OK"; } } function deletePath($cid){ $sql = "select count(*) as cnt from content where parent_id = '".$cid."'"; $row = db_fetch(db_query($sql)); if($row['cnt'] > 0){ $sql = "select * from content where parent_id = '".$cid."'"; $rs = db_query($sql); while($row = db_fetch($rs)){ deletePath($row['cid']); } $sql = "select * from content where cid = '".$cid."'"; $row = db_fetch(db_query($sql)); $sql = "delete from content where cid = '".$cid."'"; if (db_query($sql)){ $sql = "insert into content_deleted(`cid`,`razdel_name`,`type`,`parent_id`,`stype`,`disable`,`alias`,`pos`,`dateCreate`,dateDelete) values('".$row['cid']."','".$row['razdel_name']."','".$row['type']."','".$row['parent_id']."', '".$row['stype']."','".$row['disable']."','".$row['alias']."','".$row['pos']."','".$row['dateCreate']."',NOW())"; db_query($sql); // $sql = "delete from ".$row['type']." where id = '".$cid."' "; // db_query($sql); //@unlink( $cfg_static_path."content/".$type."/".$cid."_sm.jpg"); //@unlink( $cfg_static_path."content/".$type."/".$cid."_big.jpg"); //@unlink( $cfg_static_path."content/".$type."/".$cid.".png"); } } else { $sql = "select * from content where cid = '".$cid."'"; $row = db_fetch(db_query($sql)); $sql = "delete from content where cid = '".$cid."'"; if (db_query($sql)){ $sql = "insert into content_deleted(`cid`,`razdel_name`,`type`,`parent_id`,`stype`,`disable`,`alias`,`pos`,`dateCreate`,dateDelete) values('".$row['cid']."','".$row['razdel_name']."','".$row['type']."','".$row['parent_id']."', '".$row['stype']."','".$row['disable']."','".$row['alias']."','".$row['pos']."','".$row['dateCreate']."',NOW())"; db_query($sql); //$sql = "delete from ".$row['type']." where id = '".$cid."' "; //db_query($sql); //@unlink( $cfg_static_path."content/".$type."/".$cid."_sm.jpg"); //@unlink( $cfg_static_path."content/".$type."/".$cid."_big.jpg"); //@unlink( $cfg_static_path."content/".$type."/".$cid.".png"); } } } function deletePathTrash($cid){ $sql = "select count(*) as cnt from content_deleted where parent_id = '".$cid."'"; $row = db_fetch(db_query($sql)); if($row['cnt'] > 0){ $sql = "select * from content_deleted where parent_id = '".$cid."'"; $rs = db_query($sql); while($row = db_fetch($rs)){ deletePathTrash($row['cid']); } $sql = "select * from content_deleted where cid = '".$cid."'"; $row = db_fetch(db_query($sql)); $sql = "delete from content_deleted where cid = '".$cid."'"; if (db_query($sql)){ $sql = "delete from ".$row['type']." where id = '".$cid."' "; db_query($sql); @unlink( $cfg_static_path."content/".$type."/".$cid."_sm.jpg"); @unlink( $cfg_static_path."content/".$type."/".$cid."_big.jpg"); @unlink( $cfg_static_path."content/".$type."/".$cid.".png"); } } else { $sql = "select * from content_deleted where cid = '".$cid."'"; $row = db_fetch(db_query($sql)); $sql = "delete from content_deleted where cid = '".$cid."'"; if (db_query($sql)){ $sql = "delete from ".$row['type']." where id = '".$cid."' "; db_query($sql); @unlink( $cfg_static_path."content/".$type."/".$cid."_sm.jpg"); @unlink( $cfg_static_path."content/".$type."/".$cid."_big.jpg"); @unlink( $cfg_static_path."content/".$type."/".$cid.".png"); } } } function restorePathTrash($cid){ $sql = "select count(*) as cnt from content_deleted where parent_id = '".$cid."'"; $row = db_fetch(db_query($sql)); if($row['cnt'] > 0){ $sql = "select * from content_deleted where parent_id = '".$cid."'"; $rs = db_query($sql); while($row = db_fetch($rs)){ restorePathTrash($row['cid']); } $sql = "select * from content_deleted where cid = '".$cid."'"; $row = db_fetch(db_query($sql)); $sql = "delete from content_deleted where cid = '".$cid."'"; if (db_query($sql)){ $sql = "insert into content(`cid`,`razdel_name`,`type`,`parent_id`,`stype`,`disable`,`alias`,`pos`,`dateCreate` ) values('".$row['cid']."','".$row['razdel_name']."','".$row['type']."','".$row['parent_id']."', '".$row['stype']."','".$row['disable']."','".$row['alias']."','".$row['pos']."','".$row['dateCreate']."' )"; db_query($sql); } } else { $sql = "select * from content_deleted where cid = '".$cid."'"; $row = db_fetch(db_query($sql)); $sql = "delete from content_deleted where cid = '".$cid."'"; if (db_query($sql)){ $sql = "insert into content(`cid`,`razdel_name`,`type`,`parent_id`,`stype`,`disable`,`alias`,`pos`,`dateCreate` ) values('".$row['cid']."','".$row['razdel_name']."','".$row['type']."','".$row['parent_id']."', '".$row['stype']."','".$row['disable']."','".$row['alias']."','".$row['pos']."','".$row['dateCreate']."' )"; db_query($sql); } } } function crosslink($context){ global $cross_links; //print_r($cross_links); if ($context <> "" and count($cross_links) > 0){ $context = preg_replace(array_keys($cross_links),$cross_links,$context); //$string = "April 15, 2003"; //$pattern = "'(ap)'i"; //$replacement = "\$1_"; //$context = preg_replace($pattern, $replacement, $string); } return $context; } function unlinkRecursive($dir, $deleteRootToo) { if(!$dh = @opendir($dir)) { return; } while (false !== ($obj = readdir($dh))) { if($obj == '.' || $obj == '..') { continue; } if (!@unlink($dir . '/' . $obj)) { unlinkRecursive($dir.'/'.$obj, true); } } closedir($dh); if ($deleteRootToo) { @rmdir($dir); } return; } function get_admin_plugins(){ global $cfg_path, $map ; $plugins = array(); $plugins_path = $cfg_path."/admin/modules"; $plugins_dir = scandir($plugins_path); foreach ($plugins_dir as $key=> $val){ if ($val <>"." and $val <> ".."){ if (is_dir($plugins_path."/".$val)){ if (file_exists($plugins_path."/".$val."/plugins.php")){ include_once($plugins_path."/".$val."/plugins.php"); } } } } $map = array(); foreach($plugins as $key=>$parent){ foreach ($parent as $key2=>$val){ $map[$key2] = $val['url'].$val['file']; } } return $plugins; } function init_admin_plugins(){ global $base_plugins,$cfg_static_server; $base_plugins = array(); $base_plugins['content'] = array(); $base_plugins['content']['name'] = "Контент"; $base_plugins['content']['img_big'] = $cfg_static_server."/images/admin/page_content.gif"; $base_plugins['content']['img_sm'] = $cfg_static_server."/images/admin/content.png"; $base_plugins['content']['title'] = "Управление контентом сайта"; $base_plugins['services']['name'] = "Сервисы"; $base_plugins['services']['img_big'] = $cfg_static_server."/images/admin/page_services.gif"; $base_plugins['services']['img_sm'] = $cfg_static_server."/images/admin/services.png"; $base_plugins['services']['title'] = "Управление сервисными модулями"; $base_plugins['shop']['name'] = "Магазин"; $base_plugins['shop']['img_big'] = $cfg_static_server."/images/admin/page_store.gif"; $base_plugins['shop']['img_sm'] = $cfg_static_server."/images/admin/store.png"; $base_plugins['shop']['title'] = "Онлайн магазин"; /* $base_plugins['statistic']['name'] = "Веб-аналитика"; $base_plugins['statistic']['img_big'] = $cfg_static_server."/images/admin/page_statistics.gif"; $base_plugins['statistic']['img_sm'] = $cfg_static_server."/images/admin/statistic.png"; $base_plugins['statistic']['title'] = "Просмотр отчетов веб-аналитики"; */ $base_plugins['settings']['name'] = "Настройки"; $base_plugins['settings']['img_big'] = $cfg_static_server."/images/admin/page_settings.gif"; $base_plugins['settings']['img_sm'] = $cfg_static_server."/images/admin/settings.png"; $base_plugins['settings']['title'] = "Управление настройками системы"; } function admin_menu(){ global $in, $cfg_path,$cfg_static_path,$cfg_static_server, $plugins, $_ADMIN, $base_plugins; $tpl = new Templates; //main $out = ""; $sql = "select value_field from table_info where name_field='title'"; $row=db_fetch(db_query($sql)); $title = $row['value_field']; $tpl->assign('title',$title); $build_menu = ""; foreach ($base_plugins as $block_name=>$val){ if (count(@$plugins[$block_name]) > 0 ){ $bid = $tpl->createBlock(); $tpl->assignBlock('name',$val['name'],$bid); $tpl->assignBlock('img_sm',$val['img_sm'],$bid); $tpl->assignBlock('title',$val['title'],$bid); $tpl->assignBlock('block_name',$block_name,$bid); $sub_menu = ""; foreach ($plugins[$block_name] as $key2 => $val2){ if(@$_ADMIN['access'][$key2] == 1){ $bid2 = $tpl->createBlock(); $tpl->assignBlock('name',$val2['name'],$bid2); $tpl->assignBlock('razdel_name',$key2,$bid2); $tpl->assignBlock('img_sm', $val2['url']."/logo_sm.gif",$bid2); $sub_menu .= $tpl->fetchBlock("admins/block/menu_sub_razdel.tpl",$bid2); } } if($sub_menu <> ""){ $tpl->assignBlock('sub_menu',$sub_menu,$bid); $build_menu .= $tpl->fetchBlock("admins/block/menu_razdel.tpl",$bid); } } } $tpl->assign('menu',$build_menu); $output = $tpl->fetch("admins/menu.tpl"); return $output; } function vote($vid,$aid){ $vote_s = @$_COOKIE['votes']; $vote = array(); if($vote_s <> ""){ $vote = @unserialize($vote_s); } $val = @$vote[$vid]; if($val <> 1){ $sql = "update vote_answer set count_ = count_ + 1 where vid='".$vid."' and aid='".$aid."' and disable=0 "; if (db_query($sql)){ //$_SESSION['vote'][$vid] = 1; $vote[$vid] = 1; $vote_s = serialize($vote); setcookie ('votes', $vote_s, time() + 25000000); //~300day $_COOKIE['votes'] = $vote_s; } } } function crossing($url,$className="", $text_link = ""){ if($text_link == ""){ $text_link = text("move_to_shop"); } $out = "".$text_link.""; return $out; } ?>